Virtual Hosts - Web sites
Conceptos básicos de Virtual HostPara poder entender como funciona y como configurar un Virtual Host hay varios conceptos relacionados que debemos aprender. DominiosLos dominios son los nombres utilizados en Internet para
identificar redes de organizaciones. Por ejemplo, cloud-bricks.net
o google.com Los web sites que configuraremos pueden estar asociados a uno o
varios dominios. Protocolo HTTP/HTTPSHTTP es el protocolo de comunicación que permite que un navegador converse con un Servidor Web para intercambiar datos. HTTPS agrega una capa de seguridad en la comunicación, permitiendo la encripción de los datos mediante TLS/SSL. Para configurar un virtual Host con HTTPS, se debe primero configurar un certificado digital. LocationsLos locations son elementos que permiten dividir un Web Site en
zonas o carpetas distintas cada una con configuraciones
independientes. Desde un location es posible configurar restricciones de acceso,
indicar qué Servidor de HTTP debe gestionar el contenido, generar
redirecciones y controlar el cache. Los locations pueden restringir el acceso utilizando las
direcciones IP configuradas en la lista de Máquinas y
Redes del Firewall. Los locations permiten activar y configurar el mecanismo de Web Cache. Los locations también gestionan el destino de los request, de esta manera
es posible dirigir las solicitudes de un dominio a un servidor
HTTP especifico o realizar un redirect hacia un URL
externo. Cuando se solicita configurar un redirect, aparece
el campo de destino: aquí se ingresa el url hacia donde queremos
redireccionar al usuario. Si en lugar de un redirect elegimos que el contenido del Location debe ser gestionado por Servidor HTTP, aparece el campo de timeout donde se ingresa el tiempo máximo que el Cloud esperará para obtener una respuesta del servidor virtual. Configuración de Cache en LocationsCuando dentro de un Location se activa la opción de cache HTTP se
habilitan dos opciones más, las cuales funcionan de acuerdo a las
cabeceras de cache que posea la aplicación.Ver más información sobre
el sistema de caché.
Redirect HTTPLos redirect HTTP son opciones para redirigir el tráfico a sitios externos. El redirect puede ser útil por ejemplo se hace mantenimiento de un portal web y todo el tráfico se redirige a un portal distinto. La opción de redirect se encuentra en el campo de "Destino" dentro de los locations. Es posible escoger entre dos tipos de redirect:
Configurar un nuevo Virtual HostLos Virtual Hosts pueden administrarse a través de la opción Web System -> Virtual Hosts. del menú izquierdo.Para que un sitio web sea visible en Internet es necesario crear un virtual host y configurar en él los dominios asociados.
Dar clic en el botón Aceptar y luego en Aplicar
Cambios para guardar los cambios realizados. Ahora es
posible accesar el web site utilizando cualquiera de los dominios
configurados. Restringir el acceso a una carpetaPor cuestiones de seguridad, muchas veces es necesario restringir el acceso a una directorio o un URL del portal. Por ejemplo cuando se está creando una nueva sección de un portal la cual está en el URI /deportes podemos restringir el acceso para que sólo los desarrolladores puedan ingresar en ella. A continuación un ejemplo. Se ha creado el portal web que responde en http://wordpress.pruebas.vnat.net/
Al ingresar al URL http://wordpress.pruebas.vnat.net/wordpress/ se muestra una instalación de Wordpress. Ahora modificar el Virtual Host correspondiente para restringir el acceso al URL http://wordpress.pruebas.vnat.net/wordpress/ . En el campo "Permitir" escoger la red que tendrá acceso exclusivo al URI de /wordpress, para este caso escoger la red GOOGLE_DNS_IPV4. Al ingresar de nuevo al URL http://wordpress.pruebas.vnat.net/wordpress/ el acceso está restringido. Al ingresar al URL principal http://wordpress.pruebas.vnat.net/ el acceso sigue normal en el resto del site. RedirectsLos redirect son un opción útil para controlar accesos a portales en desarrollo o en mantenimiento. Es posible redirigir el tráfico a sitios externos o servidores. Para agregar un redirect a un portal es necesario modificar el virtual Host configurado. Por ejemplo al ingresar a http://wordpress.pruebas.vnat.net/google el portal web arroja error 404.
Ahora modificar el Virtual Host correspondiente para incluir un
redirect hacía el portal www.google.com Al ingresar a http://wordpress.pruebas.vnat.net/google el portal se redirige a http://www.google.com Un web site distribuido entre varios servidores HTTPEs posible hacer que distintas zonas de un mismo web site sean atendidas por diferentes servidores HTTP.A manera de ejemplo supongamos que queremos en nuestro web site, la URI /soporte sea atendida por un servidor HTTP específico. Si tenemos una máquina virtual de soporte, se debe crear un servidor HTTP apuntando al puerto e IP de dicha máquina. Dar clic en "Aceptar" y luego en "Aplicar cambios". Ahora alterando el Virtual Host es posible editar los locations y agregar la nueva URI, modificando la opción de "Destino" para apuntar al servidor HTTP que acabamos de crear. De esta manera es posible crear distribuir los locations entre distintos servidores. Crear reglas de reescritura de URIsEn la versión más reciente de la plataforma Cloud-Bricks, es posible usar el motor de reglas de NGINX para crear reglas de return y rewrite para poder controlar el comportamiento de sus web sites en situaciones particulares.Se requiere conocimiento previo en Expresiones regulares para poder configurar este tipo de reglas. Se utiliza la sintaxis de Perl, sin embargo no son necesarias comillas (" , ') ni barras/slashes (/) para delimitar las expresiones. Por favor consultar la documentación de NGINX para más información sobre casos de uso para esta herramienta.
Por favor no dude en contactar a nuestro equipo de soporte si requiere ayuda en la configuración de este tipo de reglas. |
Contenidos
• Conceptos básicos de Virtual Host• Dominios• Protocolo HTTP/HTTPS• Locations• Configuración de Cache en Locations• Redirect HTTP• Configurar un nuevo Virtual Host• Restringir el acceso a una carpeta• Redirects• Un web site distribuido entre varios servidores HTTP• Crear reglas de reescritura de URIs |